using System;
using System.Collections.Generic;
using System.Text;

namespace Mud.Server.Physical
{
	/// <summary>
	/// Base implementation for any class wishing to quickly implement
	/// event receiving. Derived classes can override any Receive method
	/// which they want to handle.
	/// </summary>
	public abstract class PhysicalEventReceiverBase : IPhysicalEventReceiver
	{
		#region IPhysicalEventReceiver methods

		public virtual void Receive(EventCreatureAppeared e)
		{
			// do nothing
		}

		public virtual void Receive(EventCreatureDisappeared e)
		{
			// do nothing
		}

		public virtual void Receive(EventCreatureMoveStarted e)
		{
			// do nothing
		}

		public virtual void Receive(EventCreatureMoveEnded e)
		{
			// do nothing
		}

		public virtual void Receive(EventCreatureSay e)
		{
			// do nothing
		}

		public virtual void Receive(EventCreatureEnteredArea e)
		{
			// do nothing
		}

		public virtual void Receive(EventCreatureExitedArea e)
		{
			// do nothing
		}

		public virtual void Receive(EventCreatureTurned e)
		{
			// do nothing
		}

		public virtual void Receive(EventSimpleObjectAppeared e)
		{
			// do nothing
		}

		public virtual void Receive(EventSimpleObjectDisappeared e)
		{
			// do nothing
		}

		public virtual void Receive(EventLocationSay e)
		{
			// do nothing
		}

		#endregion
	}
}
